var i = 0;
switch (i) {
  case 0:
    let value = "helo";
    break;
  case 1:
    let value = "world"; //重复定义错误
    break;
}

//1 :let 声明的变量只在 let 命令所在的代码块内有效。
//2不能重复声明  let 只能声明一次 var 可以声明多次:
//3let 不存在变量提升，var 会变量提升:

console.log(a);  //ReferenceError: a is not defined
let a = "apple";
 
console.log(b);  //undefined
var b = "banana";

//变量 b 用 var 声明存在变量提升，所以当脚本开始运行的时候，b 已经存在了，但是还没有赋值，所以会输出 undefined。
//变量 a 用 let 声明不存在变量提升，在声明变量 a 之前，a 不存在，所以会报错。